passwordentry: Show caps lock warning more
authorMatthias Clasen <mclasen@redhat.com>
Sun, 5 Apr 2020 04:30:23 +0000 (00:30 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Mon, 6 Apr 2020 03:43:41 +0000 (23:43 -0400)
Show the caps lock warning regardless of whether we
have the peek icon or not.

gtk/gtkpasswordentry.c

index 0ed1fe043f494e501a9e40133a118884226f55e4..f2dd58e128545babe4219348168c5cbf7a8d488b 100644 (file)
@@ -89,8 +89,8 @@ keymap_state_changed (GdkKeymap *keymap,
 
   if (gtk_editable_get_editable (GTK_EDITABLE (entry)) &&
       gtk_widget_has_focus (priv->entry) &&
-      gdk_keymap_get_caps_lock_state (priv->keymap) &&
-      !priv->peek_icon)
+      !gtk_text_get_visibility (GTK_TEXT (priv->entry)) &&
+      gdk_keymap_get_caps_lock_state (priv->keymap))
     gtk_widget_show (priv->icon);
   else
     gtk_widget_hide (priv->icon);
@@ -133,6 +133,9 @@ visibility_toggled (GObject          *object,
       gtk_image_set_from_icon_name (GTK_IMAGE (priv->peek_icon), "eye-not-looking-symbolic");
       gtk_widget_set_tooltip_text (priv->peek_icon, _("Show text"));
     }
+
+  if (priv->keymap)
+    keymap_state_changed (priv->keymap, GTK_WIDGET (entry));
 }
 
 static void